Skip to content

fix(consilium): no merge gate for a publish-failed dev round - #578

Merged
100rd merged 1 commit into
mainfrom
fix/awaiting-merge-publish-failed
Jul 21, 2026
Merged

fix(consilium): no merge gate for a publish-failed dev round#578
100rd merged 1 commit into
mainfrom
fix/awaiting-merge-publish-failed

Conversation

@100rd

@100rd 100rd commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Проблема

Dev-раунд, у которого push/MR отклонён (например, pre-receive policy hook), паркуется в awaiting_merge «чтобы человек увидел ошибку» — но UI безусловно показывал Approve merge & continue, а роут охотно делал переход, как будто раунд отгружен. Мержить при этом нечего: prRef = null.

Фикс

  • route: merge-approved → 409 nothing to merge — the develop round failed to publish при error && !prRef. Research-лупы (prRef null БЕЗ error) сохраняют свой легитимный гейт.
  • UI: кнопка approve подавлена в этом состоянии; вместо неё callout «Publish failed — nothing to merge» с объяснением (ветка раунда цела, надо чинить блокер пуша и перезапускать develop).

Тесты

loop-routes integration: 20 passed (+1 новый кейс). tsc + vite build чистые.

A dev close-out that ERRORED without producing a PR (e.g. the branch
push was rejected by a server-side policy hook) parks in awaiting_merge
so the human sees the error — but the UI still offered 'Approve merge &
continue' with nothing to merge, and the route would happily transition
as if the round had shipped.

- route: merge-approved returns 409 ('failed to publish') when the loop
  has an error and no prRef. Research loops (prRef null, NO error) keep
  their approve-and-continue gate.
- UI: the approve button is suppressed in that state and a
  'Publish failed — nothing to merge' callout explains what happened and
  that the round branch is intact.

loop-routes integration: 20 passed (1 new). tsc + vite build clean.
@100rd
100rd merged commit fbadd18 into main Jul 21, 2026
12 checks passed
@100rd
100rd deleted the fix/awaiting-merge-publish-failed branch July 21, 2026 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant